For a PC (Personal Computer) and the like, print data is created with application software after converting the data into data which can be interpreted by a print device at a printer driver.
The printer driver includes many additional functions such as minimizing multiple pages of data to fit in one single page and providing a binding space for book biding. As a part of such additional functions, the printer driver can also add a new function as needed.
Japanese Patent Laid-Open No. 2004-326601 discloses a method of adding a new function. According to the patent application document, a configuration of embedding a plug-in module which provides a new function in a printer driver enables executing a desired printing job by adding a necessary printer driver as needed.
More specifically, a print control device disclosed in the patent application document can add, update, and/or delete a function by using the plug-in module connected to a driver module itself.
Accordingly, the print control device acquires function data which covers a search range written in a search data list in a search data list UI control module which operates with a host PC and write the acquired data in a function data list. The print control device, then, displays a part of the function data written in the list in a display area on a function configuration screen and receives an instruction of adding, updating, and deleting a function corresponding to the displayed function data. According to the received instruction, the print control device executes add, update, and deletion of the function.
However, the print control device disclosed in the patent application document and other conventional technologies complicate a design and enlarges a scale of the printer driver thereby increase memory use by embodying a plug-in module in the printer diver to add functions therein. Additionally, since the plug-in modules operate as a part of the printer driver or as a single process, a crush of the plug-in module, if happens, halts operation of the whole driver.
Furthermore, since the plug-in module uses the same memory area as the printer driver does, a buffer overrun, if happens, may destroy the memory area the printer driver and/or another plug-in module use(s). The risk of the problem becomes higher with a less reliable program, such as of a plug-in module created by the user to add a function as needed.